package com.world.business.belief.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.world.business.belief.domain.Belief;
import com.world.business.belief.domain.query.BeliefAddRequest;
import com.world.business.belief.domain.query.BeliefPageRequest;
import com.world.business.belief.domain.query.BeliefUpdateRequest;
import com.world.business.belief.domain.vo.BeliefVO;

/**
 * <p>
 * 信仰 服务类
 * </p>
 *
 * @author 邓驴
 * @since 2023-07-31
 */
public interface IBeliefService extends IService<Belief> {

    /**
     * 分页列表
     *
     * @param page    分页参数
     * @param request 请求参数
     * @return {@link IPage<BeliefVO>}
     * @author WangYX
     * @date 2023/09/05 9:37
     */
    IPage<BeliefVO> getPage(IPage<Belief> page, BeliefPageRequest request);


    /**
     * 新增
     *
     * @param request 新增请求参数
     * @return {@link Long}
     * @author WangYX
     * @date 2023/09/05 9:50
     */
    Long add(BeliefAddRequest request);

    /**
     * 修改
     *
     * @param request 修改请求参数
     * @author WangYX
     * @date 2023/09/05 9:54
     */
    void update(BeliefUpdateRequest request);


    /**
     * 删除
     *
     * @param id 主键Id
     * @author WangYX
     * @date 2023/09/05 10:01
     */
    void delete(Long id);


}
